<!DOCTYPE html>
<html lang="en-US" dir="ltr">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <title>项目结构 | Sakura</title>
    <meta name="description" content="Intuitive, type safe, light and flexible Store for Vue">
    <meta name="generator" content="VitePress v1.6.3">
    <link rel="preload stylesheet" href="/assets/style.BfYLPI5H.css" as="style">
    <link rel="preload stylesheet" href="/vp-icons.css" as="style">
    <script type="module" src="/assets/chunks/metadata.550c04ff.js"></script>
    <script type="module" src="/assets/app.Cg95mKDs.js"></script>
    <link rel="preload" href="/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
    <link rel="modulepreload" href="/assets/chunks/theme.BLgPf3G8.js">
    <link rel="modulepreload" href="/assets/chunks/framework.DmV6WhQo.js">
    <link rel="modulepreload" href="/assets/1.使用指南_4.项目结构_index.md.DRRQY7MX.lean.js">
    <link rel="icon" type="image/svg+xml" href="/logo.svg">
    <link rel="icon" type="image/png" href="/logo.png">
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.css">
    <script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui@4.0/dist/fancybox.umd.js"></script>
    <meta name="wwads-cn-verify" content="5878a7ab84fb43402106c575658472fa">
    <meta property="og:type" content="website">
    <meta property="twitter:card" content="summary_large_image">
    <meta property="twitter:image" content="https://pinia.vuejs.org/social.png">
    <script src="https://cdn.usefathom.com/script.js" data-site="KFPPRRIS" data-spa="auto" defer></script>
    <script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"dark",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
    <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
    <meta property="og:url" content="https://pinia.vuejs.org">
    <meta property="og:description" content="Intuitive, type safe, light and flexible Store for Vue">
    <meta property="twitter:url" content="https://pinia.vuejs.org">
    <meta property="twitter:title" content="Pinia 🍍">
    <meta property="twitter:description" content="Intuitive, type safe, light and flexible Store for Vue">
  </head>
  <body>
    <div id="app"><div class="Layout" data-v-f4468d7a><!--[--><!--]--><!--[--><span tabindex="-1" data-v-e447c754></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-e447c754>Skip to content</a><!--]--><!----><header class="VPNav" data-v-f4468d7a data-v-cc9dd77b><div class="VPNavBar" data-v-cc9dd77b data-v-98ffb67c><div class="wrapper" data-v-98ffb67c><div class="container" data-v-98ffb67c><div class="title" data-v-98ffb67c><div class="VPNavBarTitle has-sidebar" data-v-98ffb67c data-v-4b503d9c><a class="title" href="/" data-v-4b503d9c><!--[--><!--]--><!--[--><img class="VPImage logo" src="/logo.svg" alt data-v-f4527aeb><!--]--><span data-v-4b503d9c>Sakura</span><!--[--><!--]--></a></div></div><div class="content" data-v-98ffb67c><div class="content-body" data-v-98ffb67c><!--[--><!--]--><div class="VPNavBarSearch search" data-v-98ffb67c><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-98ffb67c data-v-ff561a0c><span id="main-nav-aria-label" class="visually-hidden" data-v-ff561a0c> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/1.%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/1.%E4%BA%A7%E5%93%81%E7%AE%80%E4%BB%8B/index" tabindex="0" data-v-ff561a0c data-v-562e3cbe><!--[--><span data-v-562e3cbe>Guide</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/2.使用手册/0.流程图/index.html" tabindex="0" data-v-ff561a0c data-v-562e3cbe><!--[--><span data-v-562e3cbe>Manual</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/3.其它/1.常见问题/index.html" tabindex="0" data-v-ff561a0c data-v-562e3cbe><!--[--><span data-v-562e3cbe>Q&A</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/3.其它/3.赞助支持/index.html" tabindex="0" data-v-ff561a0c data-v-562e3cbe><!--[--><span data-v-562e3cbe>Sponsor💖</span><!--]--></a><!--]--><!--[--><a class="VPLink link vp-external-link-icon VPNavBarMenuLink" href="https://www.sakura.hk.cn:28383" target="_blank" rel="noreferrer" tabindex="0" data-v-ff561a0c data-v-562e3cbe><!--[--><span data-v-562e3cbe>Experience</span><!--]--></a><!--]--><!--]--></nav><div class="VPFlyout VPNavBarTranslations translations" data-v-98ffb67c data-v-7787f7b2 data-v-c07e882e><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="Change language" data-v-c07e882e><span class="text" data-v-c07e882e><span class="vpi-languages option-icon" data-v-c07e882e></span><!----><span class="vpi-chevron-down text-icon" data-v-c07e882e></span></span></button><div class="menu" data-v-c07e882e><div class="VPMenu" data-v-c07e882e data-v-3d7ad723><!----><!--[--><!--[--><div class="items" data-v-7787f7b2><p class="title" data-v-7787f7b2>English</p><!--[--><div class="VPMenuLink" data-v-7787f7b2 data-v-f7d422d7><a class="VPLink link" href="/src/zh/1.使用指南/4.项目结构/" data-v-f7d422d7><!--[--><span data-v-f7d422d7>简体中文</span><!--]--></a></div><!--]--></div><!--]--><!--]--></div></div></div><div class="VPNavBarAppearance appearance" data-v-98ffb67c data-v-3e6de47a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="true" data-v-3e6de47a data-v-4698b85c data-v-3726b66d><span class="check" data-v-3726b66d><span class="icon" data-v-3726b66d><!--[--><span class="vpi-sun sun" data-v-4698b85c></span><span class="vpi-moon moon" data-v-4698b85c></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-98ffb67c data-v-3e576fcb data-v-42baa202><!--[--><a class="VPSocialLink no-icon" href="https://github.com/SakuraTechy/Sakura.Automation.Platform.Api" aria-label="github" target="_blank" rel="noopener" data-v-42baa202 data-v-27dc7f6e><span class="vpi-social-github"></span></a><a class="VPSocialLink no-icon" href="https://gitee.com/SakuraTech/Sakura.Automation.Platform.Api" aria-label target="_blank" rel="noopener" data-v-42baa202 data-v-27dc7f6e><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>码云</title><path d="M11.984 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.016 0zm6.09 5.333c.328 0 .593.266.592.593v1.482a.594.594 0 0 1-.593.592H9.777c-.982 0-1.778.796-1.778 1.778v5.63c0 .327.266.592.593.592h5.63c.982 0 1.778-.796 1.778-1.778v-.296a.593.593 0 0 0-.592-.593h-4.15a.592.592 0 0 1-.592-.592v-1.482a.593.593 0 0 1 .593-.592h6.815c.327 0 .593.265.593.592v3.408a4 4 0 0 1-4 4H5.926a.593.593 0 0 1-.593-.593V9.778a4.444 4.444 0 0 1 4.445-4.444h8.296Z"/></svg></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-98ffb67c data-v-6e90f605 data-v-c07e882e><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-c07e882e><span class="vpi-more-horizontal icon" data-v-c07e882e></span></button><div class="menu" data-v-c07e882e><div class="VPMenu" data-v-c07e882e data-v-3d7ad723><!----><!--[--><!--[--><div class="group translations" data-v-6e90f605><p class="trans-title" data-v-6e90f605>English</p><!--[--><div class="VPMenuLink" data-v-6e90f605 data-v-f7d422d7><a class="VPLink link" href="/src/zh/1.使用指南/4.项目结构/" data-v-f7d422d7><!--[--><span data-v-f7d422d7>简体中文</span><!--]--></a></div><!--]--></div><div class="group" data-v-6e90f605><div class="item appearance" data-v-6e90f605><p class="label" data-v-6e90f605>Appearance</p><div class="appearance-action" data-v-6e90f605><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="true" data-v-6e90f605 data-v-4698b85c data-v-3726b66d><span class="check" data-v-3726b66d><span class="icon" data-v-3726b66d><!--[--><span class="vpi-sun sun" data-v-4698b85c></span><span class="vpi-moon moon" data-v-4698b85c></span><!--]--></span></span></button></div></div></div><div class="group" data-v-6e90f605><div class="item social-links" data-v-6e90f605><div class="VPSocialLinks social-links-list" data-v-6e90f605 data-v-42baa202><!--[--><a class="VPSocialLink no-icon" href="https://github.com/SakuraTechy/Sakura.Automation.Platform.Api" aria-label="github" target="_blank" rel="noopener" data-v-42baa202 data-v-27dc7f6e><span class="vpi-social-github"></span></a><a class="VPSocialLink no-icon" href="https://gitee.com/SakuraTech/Sakura.Automation.Platform.Api" aria-label target="_blank" rel="noopener" data-v-42baa202 data-v-27dc7f6e><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>码云</title><path d="M11.984 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.016 0zm6.09 5.333c.328 0 .593.266.592.593v1.482a.594.594 0 0 1-.593.592H9.777c-.982 0-1.778.796-1.778 1.778v5.63c0 .327.266.592.593.592h5.63c.982 0 1.778-.796 1.778-1.778v-.296a.593.593 0 0 0-.592-.593h-4.15a.592.592 0 0 1-.592-.592v-1.482a.593.593 0 0 1 .593-.592h6.815c.327 0 .593.265.593.592v3.408a4 4 0 0 1-4 4H5.926a.593.593 0 0 1-.593-.593V9.778a4.444 4.444 0 0 1 4.445-4.444h8.296Z"/></svg></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-98ffb67c data-v-e8104da4><span class="container" data-v-e8104da4><span class="top" data-v-e8104da4></span><span class="middle" data-v-e8104da4></span><span class="bottom" data-v-e8104da4></span></span></button></div></div></div></div><div class="divider" data-v-98ffb67c><div class="divider-line" data-v-98ffb67c></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-f4468d7a data-v-f414f456><div class="container" data-v-f414f456><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-f414f456><span class="vpi-align-left menu-icon" data-v-f414f456></span><span class="menu-text" data-v-f414f456>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-f414f456 data-v-410b07a5><button data-v-410b07a5>返回顶部</button><!----></div></div></div><aside class="VPSidebar" data-v-f4468d7a data-v-d9d2e79b><div class="curtain" data-v-d9d2e79b></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-d9d2e79b><span class="visually-hidden" id="sidebar-aria-label" data-v-d9d2e79b> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-0f5b6f63><section class="VPSidebarItem level-0 collapsible has-active" data-v-0f5b6f63 data-v-77ed1583><div class="item" role="button" tabindex="0" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><h2 class="text" data-v-77ed1583>使用指南</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-77ed1583><span class="vpi-chevron-right caret-icon" data-v-77ed1583></span></div></div><div class="items" data-v-77ed1583><!--[--><div class="VPSidebarItem level-1 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/1.使用指南/1.产品简介/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>产品简介</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/1.使用指南/2.快速开始/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>快速开始</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/1.使用指南/3.本地开发/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>本地开发</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/1.使用指南/4.项目结构/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>项目结构</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-0f5b6f63><section class="VPSidebarItem level-0 collapsible" data-v-0f5b6f63 data-v-77ed1583><div class="item" role="button" tabindex="0" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><h2 class="text" data-v-77ed1583>使用手册</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-77ed1583><span class="vpi-chevron-right caret-icon" data-v-77ed1583></span></div></div><div class="items" data-v-77ed1583><!--[--><div class="VPSidebarItem level-1 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/2.使用手册/0.流程图/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>流程图</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/2.使用手册/1.注册登录/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>注册登录</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-1 collapsible" data-v-77ed1583 data-v-77ed1583><div class="item" role="button" tabindex="0" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><h3 class="text" data-v-77ed1583>项目管理</h3><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-77ed1583><span class="vpi-chevron-right caret-icon" data-v-77ed1583></span></div></div><div class="items" data-v-77ed1583><!--[--><div class="VPSidebarItem level-2 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/2.使用手册/2.项目管理/1.项目配置/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>项目配置</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/2.使用手册/2.项目管理/2.环境配置/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>环境配置</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/2.使用手册/2.项目管理/3.自动化配置/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>自动化配置</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1 collapsible" data-v-77ed1583 data-v-77ed1583><div class="item" role="button" tabindex="0" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><h3 class="text" data-v-77ed1583>测试管理</h3><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-77ed1583><span class="vpi-chevron-right caret-icon" data-v-77ed1583></span></div></div><div class="items" data-v-77ed1583><!--[--><div class="VPSidebarItem level-2 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/2.使用手册/3.测试管理/1.测试场景/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>测试场景</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/2.使用手册/3.测试管理/2.测试计划/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>测试计划</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/2.使用手册/3.测试管理/3.测试报告/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>测试报告</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/2.使用手册/3.测试管理/4.定时任务/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>定时任务</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/2.使用手册/3.测试管理/5.测试度量/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>测试度量</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1 collapsible" data-v-77ed1583 data-v-77ed1583><div class="item" role="button" tabindex="0" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><h3 class="text" data-v-77ed1583>接口管理</h3><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-77ed1583><span class="vpi-chevron-right caret-icon" data-v-77ed1583></span></div></div><div class="items" data-v-77ed1583><!--[--><div class="VPSidebarItem level-2 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/2.使用手册/4.接口管理/1.接口测试/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>接口测试</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1 collapsible" data-v-77ed1583 data-v-77ed1583><div class="item" role="button" tabindex="0" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><h3 class="text" data-v-77ed1583>自动化管理</h3><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-77ed1583><span class="vpi-chevron-right caret-icon" data-v-77ed1583></span></div></div><div class="items" data-v-77ed1583><!--[--><div class="VPSidebarItem level-2 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/2.使用手册/5.自动化管理/1.UI自动化/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>UI自动化</p><!--]--></a><!----></div><!----></div><!--]--></div></section><!--]--></div></section></div><div class="no-transition group" data-v-0f5b6f63><section class="VPSidebarItem level-0 collapsible" data-v-0f5b6f63 data-v-77ed1583><div class="item" role="button" tabindex="0" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><h2 class="text" data-v-77ed1583>其它</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-77ed1583><span class="vpi-chevron-right caret-icon" data-v-77ed1583></span></div></div><div class="items" data-v-77ed1583><!--[--><div class="VPSidebarItem level-1 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/3.其它/1.常见问题/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>常见问题</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/3.其它/2.问卷调查/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>问卷调查</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-77ed1583 data-v-77ed1583><div class="item" data-v-77ed1583><div class="indicator" data-v-77ed1583></div><a class="VPLink link link" href="/3.其它/3.赞助支持/index.html" data-v-77ed1583><!--[--><p class="text" data-v-77ed1583>赞助支持 💖</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-f4468d7a data-v-d45605be><div class="VPDoc has-sidebar has-aside" data-v-d45605be data-v-33eb8004><!--[--><!--]--><div class="container" data-v-33eb8004><div class="aside" data-v-33eb8004><div class="aside-curtain" data-v-33eb8004></div><div class="aside-container" data-v-33eb8004><div class="aside-content" data-v-33eb8004><div class="VPDocAside" data-v-33eb8004 data-v-9d4c520d><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-9d4c520d data-v-ce6f73d4><div class="content" data-v-ce6f73d4><div class="outline-marker" data-v-ce6f73d4></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-ce6f73d4>On This Page</div><ul class="VPDocOutlineItem root" data-v-ce6f73d4 data-v-69b40bfa><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-9d4c520d></div><!--[--><!--]--><div class="VPDocAsideCarbonAds" data-v-9d4c520d><div class="VPCarbonAds" data-v-35185ad4></div></div><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-33eb8004><div class="content-container" data-v-33eb8004><!--[--><!--]--><main class="main" data-v-33eb8004><div style="position:relative;" class="vp-doc _1_%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97_4_%E9%A1%B9%E7%9B%AE%E7%BB%93%E6%9E%84_" data-v-33eb8004><div><h1 id="项目结构" tabindex="-1">项目结构 <a class="header-anchor" href="#项目结构" aria-label="Permalink to &quot;项目结构&quot;">​</a></h1><h2 id="前端结构" tabindex="-1">前端结构 <a class="header-anchor" href="#前端结构" aria-label="Permalink to &quot;前端结构&quot;">​</a></h2><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes dracula-soft vitesse-light vp-code" tabindex="0"><code><span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">Sakura.Automation.Platform.Web</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> docs</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                                  # 项目文档</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> public</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                                # 公共文件</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> logo.png</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                          # LOGO</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> index.html</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                        # Vue 入口模板</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> src</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                                   # 主目录</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   ├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> api</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                               # Api ajax 等</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   ├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> assets</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                            # 本地静态资源</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   ├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> config</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                            # 项目基础配置，包含路由，全局设置</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   ├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> components</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                        # 业务通用组件</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   ├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> core</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                              # 项目引导, 全局配置初始化，依赖包引入等</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   ├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> directive</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                         # 自定义指令</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   ├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> router</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                            # Vue-Router</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   ├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> store</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                             # Vuex</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   ├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> utils</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                             # 工具库</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   ├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> locales</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                           # 国际化资源</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   ├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> views</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                             # 业务页面入口和常用模板</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   ├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> App.vue</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                           # Vue 模板入口</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> main.js</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                           # Vue 入口 JS</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> permission.js</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                     # 路由守卫(路由权限控制)</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">   └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> global.less</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                       # 全局样式</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> tests</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                                 # 测试工具</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> .eslintrc.js</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                          # ESLint 配置项</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> .browserslistrc</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                       # Babel 转码配置</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> .editorconfig</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                         # 定义代码格式</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> .gitignore</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                            # Git 忽略项</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> babel.config.js</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                       # Babel-loader 配置</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> vue.config.js</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                         # Vue-cli 配置</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> postcss.config.js</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                     # PostCSS 配置</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> package.json</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                          # npm包配置文件，里面定义了项目的npm脚本，依赖包等信息</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">└──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> README.md</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                             # 项目说明文档</span></span></code></pre></div><h2 id="后端结构" tabindex="-1">后端结构 <a class="header-anchor" href="#后端结构" aria-label="Permalink to &quot;后端结构&quot;">​</a></h2><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes dracula-soft vitesse-light vp-code" tabindex="0"><code><span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">Sakura.Automation.Platform.Api</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> sakura-admin</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                          # 系统启动入口</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> sakura-common</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                         # 工具类</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> annotation</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                    # 自定义注解</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> config</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                        # 全局配置</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> constant</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                      # 通用常量</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> core</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                          # 核心控制</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> enums</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                         # 通用枚举</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> exception</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                     # 通用异常</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> filter</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                        # 过滤器处理</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> utils</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                         # 通用类处理</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> sakura-controller</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                      # 前台控制器</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> sakura-framework</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                      # 框架核心</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> aspectj</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                       # 注解实现</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> config</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                        # 系统配置</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> datasource</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                    # 数据权限</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> interceptor</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                   # 拦截器</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> manager</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                       # 异步处理</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> security</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                      # 权限控制</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">│</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;">       └──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> web</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                           # 前端控制</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> sakura-generator</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                      # 代码生成工具</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> sakura-quartz</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                         # 定时任务</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> sakura-system</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                         # 系统管理</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> sakura-xxxxxx</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                         # 其他模块</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">├──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> pom.xml</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                               # Maven 项目核心配置文件</span></span>
<span class="line"><span style="--shiki-dark:#62E884;--shiki-light:#59873A;">└──</span><span style="--shiki-dark:#E7EE98;--shiki-light:#B56959;"> README.md</span><span style="--shiki-dark:#7B7F8B;--shiki-light:#A0ADA0;">                             # 项目说明文档</span></span></code></pre></div></div></div></main><footer class="VPDocFooter" data-v-33eb8004 data-v-b67cf673><!--[--><!--[--><!--[--><!--[--><!----><!--]--><!--]--><!--]--><!--]--><div class="edit-info" data-v-b67cf673><div class="edit-link" data-v-b67cf673><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/SakuraTechy/sakura-docs/edit/dev/1.使用指南/4.项目结构/index.md" target="_blank" rel="noreferrer" data-v-b67cf673><!--[--><span class="vpi-square-pen edit-link-icon" data-v-b67cf673></span> Suggest changes to this page<!--]--></a></div><div class="last-updated" data-v-b67cf673><p class="VPLastUpdated" data-v-b67cf673 data-v-8dc6d9a3>最后更新于: <time datetime="2025-03-27T09:03:20.000Z" data-v-8dc6d9a3></time></p></div></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-b67cf673><span class="visually-hidden" id="doc-footer-aria-label" data-v-b67cf673>Pager</span><div class="pager" data-v-b67cf673><a class="VPLink link pager-link prev" href="/1.使用指南/3.本地开发/index.html" data-v-b67cf673><!--[--><span class="desc" data-v-b67cf673>Previous page</span><span class="title" data-v-b67cf673>本地开发</span><!--]--></a></div><div class="pager" data-v-b67cf673><a class="VPLink link pager-link next" href="/2.使用手册/0.流程图/index.html" data-v-b67cf673><!--[--><span class="desc" data-v-b67cf673>Next page</span><span class="title" data-v-b67cf673>流程图</span><!--]--></a></div></nav></footer><!--[--><!--[--><!--[--><div id="comment-container"></div><!--]--><!--]--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-f4468d7a data-v-856d5f9e><div class="container" data-v-856d5f9e><p class="message" data-v-856d5f9e>Released under the Apache-2.0 License.</p><p class="copyright" data-v-856d5f9e>Copyright © 2019-2025 SakuraTechy</p></div></footer><!--[--><!--]--></div></div>
    
    
  </body>
</html>